package modelLayer;

/**
 * The physical copy of a movie
 * 
 * @author Gruppe E
 * @version 1.0
 */
public class Copy
{
    private String serialNumber;
    private String purchaseDate;
    private int purchasePrice;
    private DVD dvd;
    private boolean state;

    /**
     * Constructor for objects of class Copy
     */
    public Copy(String serialNumber, String purchaseDate, int purchasePrice, DVD dvd)
    {
        this.serialNumber = serialNumber;
        this.purchaseDate = purchaseDate;
        this.purchasePrice = purchasePrice;
        this.dvd = dvd;
        state = true;
    }

    /**
     * Method getState
     *
     * @return The return value
     */
    public boolean getState()
    {
        return state;
    }

    /**
     * Method setState
     *
     * @param state A parameter
     */
    public void setState(boolean state)
    {
        this.state=state;
    }

    //     public void setDvd(DVD dvd)
    //     {
    //         this.dvd = dvd;
    //     }

    /**
     * Method getDvd
     *
     * @return The return value
     */
    public DVD getDvd()
    {
        return dvd;
    }

    /**
     * Method deleteDvd
     *
     */
    public void deleteDvd()
    {
        dvd = null;
    }

    /**
     * Method setSerialNumber
     *
     * @param serialNumber A parameter
     */
    public void setSerialNumber(String serialNumber)
    {
        this.serialNumber = serialNumber;
    }

    /**
     * Method setPurchaseDate
     *
     * @param purchaseDate A parameter
     */
    public void setPurchaseDate(String purchaseDate)
    {
        this.purchaseDate = purchaseDate;
    }

    /**
     * Method setPurchasePrice
     *
     * @param purchasePrice A parameter
     */
    public void setPurchasePrice(int purchasePrice)
    {
        this.purchasePrice = purchasePrice;
    }

    /**
     * Method getSerialNumber
     *
     * @return The return value
     */
    public String getSerialNumber()
    {
        return serialNumber;
    }

    /**
     * Method getPurchaseDate
     *
     * @return The return value
     */
    public String getPurchaseDate()
    {
        return purchaseDate;
    }

    /**
     * Method getPurchasePrice
     *
     * @return The return value
     */
    public int getPurchasePrice()
    {
        return purchasePrice;
    }

}
